/***********************************************************************
 * Module:  Projection.java
 * Author:  p1102040
 * Purpose: Defines the Class Projection
 ***********************************************************************/

package plannificationProjections;

import java.util.*;

/** @pdOid 3bf2b973-284d-4b6c-b6fc-c3e9d169b137 */
public class Projection {
   /** @pdOid 9e4a4b52-41ea-42c7-8acb-f832aa18db17 */
   private int idProjection;
   /** @pdOid 6b4d9dc4-92a2-4681-acc2-eded25a9c8f3 */
   private Film film;
   /** @pdOid 3d528676-533a-4455-96e2-931427b65f79 */
   private Date heureDebut;
   /** @pdOid 94f2f37a-0b1f-49f6-80d3-5f5c7d3c1bc7 */
   private Date heureFin;
   
   /** @pdOid a209d708-f916-4478-972f-ee1f28b41c68 */
   protected void finalize() {
      // TODO: implement
   }
   
   /** @pdRoleInfo migr=no name=Salle assc=association6 coll=java.util.Collection impl=java.util.HashSet mult=0..* */
   public java.util.Collection<Salle> laSalle;
   /** @pdRoleInfo migr=no name=Planning assc=association7 coll=java.util.Collection impl=java.util.HashSet mult=1..* */
   public java.util.Collection<Planning> lePlanning;
   /** @pdRoleInfo migr=no name=Jury assc=association8 coll=java.util.Collection impl=java.util.HashSet mult=0..* */
   public java.util.Collection<Jury> leJury;
   
   /** @pdOid 6d890bb2-60ba-4fed-ab19-ea64e272097f */
   public int getIdProjection() {
      return idProjection;
   }
   
   /** @param newIdProjection
    * @pdOid 2f97c0c0-0e8f-48c8-8465-9cf9e66ad0c1 */
   public void setIdProjection(int newIdProjection) {
      idProjection = newIdProjection;
   }
   
   /** @pdOid 82ce5248-81e3-4360-a249-6a4f3c4697d6 */
   public Film getFilm() {
      return film;
   }
   
   /** @param newFilm
    * @pdOid b653abaf-c98a-4349-9df4-3ba4a9f4070e */
   public void setFilm(Film newFilm) {
      film = newFilm;
   }
   
   /** @pdOid 60b4c6d3-3a1e-4c45-b5a2-5c08c293b8d9 */
   public Date getHeureDebut() {
      return heureDebut;
   }
   
   /** @param newHeureDebut
    * @pdOid 787e1604-e0a0-4f02-be42-0c80126695c3 */
   public void setHeureDebut(Date newHeureDebut) {
      heureDebut = newHeureDebut;
   }
   
   /** @pdOid a3bcdaf7-6f4e-4286-b941-a45705bded0a */
   public Date getHeureFin() {
      return heureFin;
   }
   
   /** @param newHeureFin
    * @pdOid 98630065-ebf3-4a3b-ae92-6300676738f5 */
   public void setHeureFin(Date newHeureFin) {
      heureFin = newHeureFin;
   }
   
   /** @pdOid c257e2f0-803d-450d-ad7a-2f2a69e2babd */
   public Projection() {
      // TODO: implement
   }
   
   
   /** @pdGenerated default getter */
   public java.util.Collection<Salle> getLaSalle() {
      if (laSalle == null)
         laSalle = new java.util.HashSet<Salle>();
      return laSalle;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorLaSalle() {
      if (laSalle == null)
         laSalle = new java.util.HashSet<Salle>();
      return laSalle.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newLaSalle */
   public void setLaSalle(java.util.Collection<Salle> newLaSalle) {
      removeAllLaSalle();
      for (java.util.Iterator iter = newLaSalle.iterator(); iter.hasNext();)
         addLaSalle((Salle)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newSalle */
   public void addLaSalle(Salle newSalle) {
      if (newSalle == null)
         return;
      if (this.laSalle == null)
         this.laSalle = new java.util.HashSet<Salle>();
      if (!this.laSalle.contains(newSalle))
         this.laSalle.add(newSalle);
   }
   
   /** @pdGenerated default remove
     * @param oldSalle */
   public void removeLaSalle(Salle oldSalle) {
      if (oldSalle == null)
         return;
      if (this.laSalle != null)
         if (this.laSalle.contains(oldSalle))
            this.laSalle.remove(oldSalle);
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllLaSalle() {
      if (laSalle != null)
         laSalle.clear();
   }
   /** @pdGenerated default getter */
   public java.util.Collection<Planning> getLePlanning() {
      if (lePlanning == null)
         lePlanning = new java.util.HashSet<Planning>();
      return lePlanning;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorLePlanning() {
      if (lePlanning == null)
         lePlanning = new java.util.HashSet<Planning>();
      return lePlanning.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newLePlanning */
   public void setLePlanning(java.util.Collection<Planning> newLePlanning) {
      removeAllLePlanning();
      for (java.util.Iterator iter = newLePlanning.iterator(); iter.hasNext();)
         addLePlanning((Planning)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newPlanning */
   public void addLePlanning(Planning newPlanning) {
      if (newPlanning == null)
         return;
      if (this.lePlanning == null)
         this.lePlanning = new java.util.HashSet<Planning>();
      if (!this.lePlanning.contains(newPlanning))
         this.lePlanning.add(newPlanning);
   }
   
   /** @pdGenerated default remove
     * @param oldPlanning */
   public void removeLePlanning(Planning oldPlanning) {
      if (oldPlanning == null)
         return;
      if (this.lePlanning != null)
         if (this.lePlanning.contains(oldPlanning))
            this.lePlanning.remove(oldPlanning);
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllLePlanning() {
      if (lePlanning != null)
         lePlanning.clear();
   }
   /** @pdGenerated default getter */
   public java.util.Collection<Jury> getLeJury() {
      if (leJury == null)
         leJury = new java.util.HashSet<Jury>();
      return leJury;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorLeJury() {
      if (leJury == null)
         leJury = new java.util.HashSet<Jury>();
      return leJury.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newLeJury */
   public void setLeJury(java.util.Collection<Jury> newLeJury) {
      removeAllLeJury();
      for (java.util.Iterator iter = newLeJury.iterator(); iter.hasNext();)
         addLeJury((Jury)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newJury */
   public void addLeJury(Jury newJury) {
      if (newJury == null)
         return;
      if (this.leJury == null)
         this.leJury = new java.util.HashSet<Jury>();
      if (!this.leJury.contains(newJury))
         this.leJury.add(newJury);
   }
   
   /** @pdGenerated default remove
     * @param oldJury */
   public void removeLeJury(Jury oldJury) {
      if (oldJury == null)
         return;
      if (this.leJury != null)
         if (this.leJury.contains(oldJury))
            this.leJury.remove(oldJury);
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllLeJury() {
      if (leJury != null)
         leJury.clear();
   }

}